class: inverse,left, middle background-image: url(data:image/png;base64,#background.png) background-size: cover <img src="data:image/png;base64,#LOGO_DIPLOMADO.png" width="500px"/> ##Módulo 2: Percepción Remota Satelital óptica ### Procesamiento Digital (Parte 2) MatÃas Olea <br> <a href="https://orcid.org/0000-0003-0194-7784"> ORCID </a><br> matias.olea@pucv.cl</a><br> .large[<b><a href="https://www.pucv.cl/uuaa/site/edic/base/port/labgrs.html">LabGRS</a> | Agosto 2022</b>] <br> --- class: center,middle background-image: url(data:image/png;base64,#labgrs_logo.png) background-size: 35% --- ## ¿Qué aprenderemos en esta unidad? Aprenderemos ... -- 1) Combinaciones de bandas. (✓) -- 2) Calibración radiométrica. (✓) -- 3) Corrección Atmosférica. (✓) -- 4) Aplicación de filtros de calidad de la información satelital. -- 5) Compensación topográfica por ilumiación. -- 6) Mosaico de imágenes (Fusión por histogramas y Unión simple). -- 7) Método de Pansharpening --- ### Filtros de Calidad de la Información: Quality Assessment <center><img src="data:image/png;base64,#bit.png" width="800px"/></center> --- ### Filtros de Calidad de la Información: Quality Assessment ```r QA.band <- stackMeta(meta,category = "qa")[[1]] # abrimos la banda Qa pixel source("YourPath/QAbits.R") # indicar directorio y archivo de la función dec <- QAbits(path = "YourPath/") # indicar directorio de almacenamiento imagen ``` ``` ## [1] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 ## [1] 0 1 0 1 0 1 0 1 0 0 0 0 0 0 1 0 ## [1] 0 1 0 1 0 1 0 1 0 1 0 0 0 0 0 0 ## [1] 0 1 0 1 0 1 0 1 1 0 0 0 0 0 1 0 ## [1] 0 1 0 1 0 1 0 1 1 1 0 0 0 0 0 0 ## [1] 0 1 0 1 0 1 1 0 0 0 0 0 0 0 1 0 ## [1] 0 1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 ## [1] 0 1 0 1 0 1 1 0 1 0 0 0 0 0 1 0 ## [1] 0 1 0 1 0 1 1 0 1 1 0 0 0 0 0 0 ## [1] 0 1 0 1 0 1 1 1 0 0 0 0 1 0 0 0 ## [1] 0 1 0 1 1 1 0 1 0 0 0 1 0 0 1 0 ## [1] 0 1 0 1 1 1 0 1 0 1 0 1 0 0 0 0 ## [1] 0 1 0 1 1 1 1 0 0 0 0 1 0 0 1 0 ## [1] 0 1 0 1 1 1 1 0 0 1 0 1 0 0 0 0 ## [1] 0 1 1 1 0 1 0 1 0 0 1 0 0 0 1 0 ## [1] 1 1 0 1 0 1 0 1 0 1 0 0 0 1 0 0 ## [1] 1 1 0 1 0 1 0 1 1 0 0 0 0 1 1 0 ## [1] 1 1 0 1 0 1 0 1 1 1 0 0 0 1 0 0 ## [1] 1 1 0 1 0 1 1 0 1 0 0 0 0 1 1 0 ## [1] 1 1 0 1 0 1 1 0 1 1 0 0 0 1 0 0 ## [1] 1 1 0 1 0 1 1 1 0 0 0 0 1 1 0 0 ## [1] 1 1 0 1 1 1 0 1 0 0 0 1 0 1 1 0 ``` --- ### Filtros de Calidad de la Información: Quality Assessment ```r view(dec) ```
--- ### Filtros de Calidad de la Información: Quality Assessment ```r QA.vals <- dec %>% # guarda nuestra tabla dec en el objeto QA.vals rowwise() %>% # aplicará una funcion a todas las filas filter("High" %in% c_across(27:30)) # buscará la condición High y filtrará dos.qa <- ref.dos # nuestra corrección la guardamos en otro objeto dos.qa[QA.band %in% QA.vals$value] <- NA #aplicamos los valores de QA para eliminar pixeles ``` --- ### Filtros de Calidad de la Información: Quality Assessment <img src="data:image/png;base64,#Procesamiento_2_files/figure-html/unnamed-chunk-7-1.png" width="100%" /> --- ### Compensación topográfica de la ilumiación <center><img src="data:image/png;base64,#modelo_topo.png" width="800px"/></center> --- ### Compensación topográfica de la ilumiación #### Pero antes ... veamos que es el remuestreo -- .pull-left[ **Vecino mas cercano (Nearest Neighbor)** Este método asiga como valor de salida, el valor de la celda original cuyo centro esté posicionado en la nueva celda. Este método se utiliza cuando no queremos alterar el valor original de entrada sino que solo reposicionarlo, es el caso de las variables discretas, como por ejemplo los usos de suelo. ] .pull-right[ <center><img src="data:image/png;base64,#vecino.png" width="500px"/></center> ] --- ### Compensación topográfica de la ilumiación #### Pero antes ... veamos que es el remuestreo -- .pull-left[ **Interpolacion bilinear (Bilinear)** Este método no solo toma en cuenta el pixel de origen que ocupa el centro del nuevo pixel, sino que toma en consideración otros 3 y promedia los valores en porcentajes equivalentes a la superficie que cubren del nuevo pixel. Este método tiene a suavizar las transiciones de valores, se utiliza a menudo cuando hay ruido en los datos de entrada. ] .pull-right[ <center><img src="data:image/png;base64,#BILINEAR.png" width="500px"/></center> ] --- ### Compensación topográfica de la ilumiación #### Pero antes ... veamos que es el remuestreo -- .pull-left[ **Convolución Cúbica (Cubic Convolution)** Este método es parecido al bilineal pero en lugar de considerar 4 pixeles, considera 16. Es utilizado cuando existe exceso de ruido y tiene como resultado un suavizado mayor que el bilineal. ] .pull-right[ <center><img src="data:image/png;base64,#CUBICA.png" width="500px"/></center> ] --- ### Compensación topográfica de la ilumiación #### Pero antes ... veamos que es el remuestreo -- .pull-left[ **Mayoria (Majority)** Este método es muy similar al vecino más cercano, la gran diferencia es que en lugar de adquirir el valor del pixel que se posiciona en el centro del nuevo, adquiere el valor del pixel que cubre mayor parte de la superficie del nuevo. ] .pull-right[ <center><img src="data:image/png;base64,#MAYORIA.png" width="500px"/></center> ] --- ### Compensación topográfica de la ilumiación #### Pero antes ... veamos que es el remuestreo <center><img src="data:image/png;base64,#plot_dem.png" width="1000px"/></center> --- ### Compensación topográfica de la ilumiación #### Pero antes ... veamos que es el remuestreo <center><img src="data:image/png;base64,#perfil.png" width="1000px"/></center> --- ### Compensación topográfica de la ilumiación #### Pero antes ... veamos que es el remuestreo <center><img src="data:image/png;base64,#plot_lc.png" width="1000px"/></center> --- ### Compensación topográfica de la ilumiación <center><img src="data:image/png;base64,#img_dem.png" width="800px"/></center> --- ### Compensación topográfica de la ilumiación <center><img src="data:image/png;base64,#topocorrec.png" width="800px"/></center> --- ### Compensación topográfica de la ilumiación <center><img src="data:image/png;base64,#topocorrec.png" width="800px"/></center> Recordar que para el análisis espacial entre raster se debe cumplir: -- - **Mismo sistema de referencia y coordenadas** (CRS y XY-origen) - **Misma área de trabajo** (nrow1=nrow2 & ncol1=ncol2) - **Misma resolución espacial** (res1=res2) --- ### Compensación topográfica de la ilumiación ```r # Inputs dem <- raster("YourFolder/s37w073.hgt") area <- read_sf("YourFolder/Area_General_Incedio.gpkg") ## homogenizacion de la informacion ncrs <- "+proj=utm +zone=18 +datum=WGS84 +units=m +no_defs +type=crs" # CRS referencia p.dem <- projectRaster(dem,crs=ncrs,res=30,method="ngb") p.dos <- brick("YourFolder/Landsat_correc_reproj.tif") r.dem <- resample(x=p.dem,y=p.dos[[1]],method="ngb") # Nota: recordar que RStoolbox utiliza raster y no terra, por lo que algunas # funciones y/o argumentos pueden cambiar, como en method, para Nearest # Neighbor es "ngb" y no "near". m.dos <- crop(p.dos,area) %>% mask(area) #enmascaramos nuestra imagen m.dem <- crop(r.dem,area) %>% mask(area) #enmascaramos nuestro dem ``` --- ### Compensación topográfica de la ilumiación ```r topcor <- topCor(m.dos, dem=m.dem, metaData = meta, method="C",na.rm=T) ``` ```r par(mfrow=c(1,2)) plot(m.dos[[3]],col=grey.colors(15)) plot(topcor[[3]],col=grey.colors(15)) ``` <img src="data:image/png;base64,#Procesamiento_2_files/figure-html/unnamed-chunk-11-1.png" width="100%" /> --- ### BibliografÃa Avdan & Jovanovska (2016) Algorithm for Automated Mapping of Land Surface Temperature Using LANDSAT 8 Satellite Data. Journal of Sensors. Volume 2016. https://doi.org/10.1155/2016/1480307 Gyanesh Chander, Brian L. Markham, Dennis L. Helder (2009) Summary of current radiometric calibration coefficients for Landsat MSS, TM, ETM+, and EO-1 ALI sensors, Remote Sensing of Environment, Volume 113, Issue 5, https://doi.org/10.1016/j.rse.2009.01.007. A. Barsi, J. L. Barker and J. R. Schott (2003) "An Atmospheric Correction Parameter Calculator for a single thermal band earth-sensing instrument," IGARSS 2003. 2003 IEEE International Geoscience and Remote Sensing Symposium. Proceedings (IEEE Cat. No.03CH37477), 2003, pp. 3014-3016 vol.5, doi: 10.1109/IGARSS.2003.1294665. King Michael D., Kaufman Yoram J., Tanré Didier, and Nakajima Teruyuki (1999) Remote Sensing of Tropospheric Aerosols from Space: Past, Present, and Future. American Meteorological Society. Volumen 80. Issue 11. https://doi.org/10.1175/1520-0477(1999)080<2229:RSOTAF>2.0.CO;2 --- ### BibliografÃa Wegmann M., Leutner B., Dech S. (2016) Remote Sensing and GIS for Ecologists Using Open Source Software. Ed. Pelagic Sobrino J.A., Ed. (2000) Teledección. AECI. Zhang M., Hu C., Kowalewski M.G., Janz S.J., Lee Z. & Wei J. (2017) Atmospheric correction of hyperspectral airborne GCAS measurements over the Louisiana Shelf using a cloud shadow approach. International Journal of Remote Sensing. https://doi.org/10.1080/01431161.2017.1280633 Zhengming Wan and J. Dozier (1996) "A generalized split-window algorithm for retrieving land-surface temperature from space," in IEEE Transactions on Geoscience and Remote Sensing, vol. 34, no. 4, pp. 892-905, July 1996, doi: 10.1109/36.508406. --- class: inverse middle 